/*
 * To change this template, choose Tools | Templates
 * and open the template in the editor.
 */
package concoursbelote;

import java.util.ArrayList;

/**
 *
 * @author Shehu
 */
public class PliBelote 
{
    int pointEquipeDG =0 ;//droite et gauche
    int pointEquipeDD =0;// devant et derrière
    Carte cartesPli []= new Carte[4];
    private static int totalDG = 0; 
    private static int totalDD = 0; 
    boolean pause = true ;
    
    private static final int derriere =0;
    private static final int droite =1;
    private static final int devant =2;
    private static final int gauche =3;
    
    ArrayList<Carte> tas = new ArrayList<Carte>();

    /**
     * Constructeur par défaut , permettant d'initialiser le pli 
     * @author Shehu
     */
    public PliBelote() 
    {
        cartesPli [0]= null;
        cartesPli [1]=null;
        cartesPli [2]=null ;
        cartesPli [3]=null;
    }
    
    
    
    public static int getTotalDG() 
    {
        return totalDG;
    }

    public static int getTotalDD() 
    {
        return totalDD;
    }

    
    
    public static void setTotalDG(int aTotalDG) 
    {
        totalDG = aTotalDG;
    }

    
    
    public static void setTotalDD(int aTotalDD) 
    {
        totalDD = aTotalDD;
    }
    
    
    
    /**
     * Methode permettant au joueur de mettre sa carte dans le pli du milieu
     * @param joueur
     * @param carteJouee 
     */
    void setPli (int joueur , Carte carteJouee)
    {
        cartesPli[joueur]= carteJouee;
    }
    
    public int gagnePli (String couleurJouee , String atout , int tour)
    {
        int nombrePoint=0;
        int position =0;
        int valeur;
        int valeurFinale=0;
        int point =0;
        
        System.out.println (" <Arbitre > : L'atout est"+atout);
        for (int i =0 ; i<4 ; i++)
        {
            valeur = ServeurArbitre.valeurCartePli(couleurJouee, cartesPli[i], atout);
            if (valeur>valeurFinale)
            {
                valeurFinale=valeur;
                position=i;
            }
            if (cartesPli[i].getCouleur().equals(atout))
                point=cartesPli[i].getPointAtout();
            else
                point=cartesPli[i].getPointHorsAtout();
            
            System.out.println (cartesPli[i].getNumero()+" de "+cartesPli[i].getCouleur()+ "Points ="+point);
            nombrePoint+=point;
            point=0;
        }
        System.out.println ("<Arbitre> : Somme des Points =" +nombrePoint);
        if (tour==7)
            nombrePoint+=10;
        if (position==derriere || position==devant)
            pointEquipeDD+=nombrePoint;
        if (position==droite || position==gauche)
            pointEquipeDG+=nombrePoint;
        nombrePoint=0;
        
        /*tas.add(cartesPli[derriere].clone());
        tas.add(cartesPli[devant].clone());
        tas.add(cartesPli[droite].clone());
        tas.add(cartesPli[gauche].clone());*/
        
        return position;
    }
    
    public void gagnePartie ()
    {
        int max ;
        if (pointEquipeDD> pointEquipeDG)
        {
            max = pointEquipeDD;
            System.out.println ("L'équipe Droite-Gauche a perdu avec "+ pointEquipeDG + "points contre "+max+"pour l'équipe adverse");
        }
        else
        {
            max= pointEquipeDG;
            
            System.out.println (" L'équipe Devant-Derrière a "+ pointEquipeDD +"points contre "+max+"pour l'équipe adverse");
        }
    }
    
    
    
    
    
    
    
}
